<?
/* Se asegura que el archivo es incluido por el index */
	defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Proyecto_contacto_exe( $this );

	class Proyecto_contacto_exe extends Exe
	{
		function Proyecto_contacto_exe( &$oModule )
			{
				$this->Exe( $oModule );
			}
		// MODIFICAR_Proyecto
		function update()
			{
				// Convierte a variables los datos del Formulario asociado a la accion
				$oForm = $this->oModule->loadClass( 'Proyecto_contacto_frm' );
				extract( $oForm->getFieldArray() );
				// Modifica el Registro de Proyecto
				if ( $ncOrganizacion && $ncPersona )
				{
					$oModAdministracion =& loadModule( 'administracion' );
					$oModAdministracion->setSubModule('entidades' );
					$oExe = $oModAdministracion->loadClass( 'organizacion_persona_exe' );
					$oExe->save();
				}
				// Modifica el Registro de Evento
					$this->oDatabase->update("atProyectoContacto",
									"ncObjetivo", $ncObjetivo,
									"ncTarea", $ncTarea,
									"ncPersona", $ncPersona ,
									"ncOrganizacion", $ncOrganizacion,
									"WHERE",
									"ncProyecto", $ncProyecto,
									"ncContacto", $ncContacto );
				$oForm->reset();
			}
		// AGREGAR_Proyecto
		function insert()
			{
				// Convierte a variables los datos del Formulario asociado a la accion
				$oForm = $this->oModule->loadClass( 'Proyecto_contacto_frm' );
				extract( $oForm->getFieldArray() );

				// Si ingreso ni organizacion ni persona => error
				if ( !$ncOrganizacion && !$ncPersona )
				{
					addMessage("Debe ingresar una organizacion y/o una persona");
					return false;
				}
				// Si ingreso la Organizacion & la Persona => Agrega los datos laborales
				if ( $ncOrganizacion && $ncPersona )
				{
					$oModAdministracion =& loadModule( 'administracion' );
					$oModAdministracion->setSubModule('entidades' );
					$oExe = $oModAdministracion->loadClass( 'organizacion_persona_exe' );
					$oExe->save();
				}
				// Agrega la Persona al Proyecto
					$ncContacto = $this->oDatabase->nextKey("atProyectoContacto","ncContacto", "ncProyecto=$ncProyecto");
					$this->oDatabase->insert("atProyectoContacto",
									"ncPersona", $ncPersona ,
									"ncOrganizacion", $ncOrganizacion,
									"ncObjetivo", $ncObjetivo,
									"ncTarea", $ncTarea,
									"ncContacto", $ncContacto,
									"ncProyecto", $ncProyecto );
				// Redirecciona la siguiente accion
				$oForm->reset();
			}
		// ELIMINAR_Proyecto
		function delete()
			{
				$ncProyecto = getParam( 'ncProyecto' );
				$ncContacto = getParam( 'ncContacto' );
				if ( $ncProyecto && $ncContacto )
				{
					$this->oDatabase->delete( "atProyectoContacto", "ncContacto", $ncContacto , "ncProyecto", $ncProyecto );
				}
			}
	}
?>
